main() {
//购物车数据
List carts=[
  {'name':'商品1','price':100,'count':1,'checked':true},
  {'name':'商品2','price':200,'count':2,'checked':false},
  {'name':'商品3','price':300,'count':3,'checked':true},
];
//调用函数， 判断是否全选
bool isAll=isAllSelected(carts);
print('是否全选：$isAll');
}

//1.判断是否全选
bool isAllSelected(List carts){
  //1.现成的every方法
 // return carts.every((item){
   // return item['checked'];
  //});

  //2.for in遍历购物车数据1，判断是否全选
  //bool isAll=true;
  //for(var item in carts){
    //if(!item['checked']){
      //isAll=false;
      //break;//只要有一个商品没有选中就不是全选，中断循环
    //}
  //}
  //return isAll;

  //3.for循环遍历购物车数据2，判断是否全选
 // bool isAll=true;
  //for(int i=0;i<carts.length;i++){
    //if(!carts[i]['checked']){
      //isAll=false;
      //break;//只要有一个商品没有选中，就不是全选，中断循环

    //}
  //}
  //return isAll;
//4.优化代码，是由return语句代替break语句 使用reture直接退出函数
 for(var item in carts){
  if(!item['checked']){
    return false;//reture直接退出函数 循环也就被中断了
  }

 }
 return true;//如果循环都没被中单，那么就是全选true



}


